﻿using System;
using System.Collections;
using System.Configuration;
using System.Data;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.HtmlControls;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using KenLib.BusinessManager;
using DataInfo;
using System.Collections.Generic;
using System.Data.Common;
using System.Data.SqlClient;
using XBLib.Dal.AdoDal;
using KenLib.BusinessObject;
using System.Text;

public partial class JOINT_frmJ_InterviewResultCheck : System.Web.UI.Page
{
    protected void Page_Load(object sender, EventArgs e)
    {
        ((JOINT_MstPage_JOINT)this.Master).HideLiArea("frmJ_InterviewResultCheck");
        ((JOINT_MstPage_JOINT)this.Master).changeTitle("面接結果 (確認)");
        grv.Columns[3].Visible = false;
        btn決定.Enabled = false; //Disable Button
        ddl_組合員企業選択.Enabled = false; //Disable DropdownList
        ddl_組合選択.Enabled = false; //Disable DropdownList
        DataTable dt = new DataTable();

        //Check Seesion Logion
        if (Session["役"] == null || Session["役"].ToString() == "")
        {
            Response.Redirect("~/frmD_Login.aspx");
        }
        if (!IsPostBack)
        {
            ddl_組合選択.SelectedValue = (String)Session["組合選択"];//param 1
            ddl_組合員企業選択.SelectedValue = (String)Session["組合員企業選択"];//param 2
            getDD1_組合選択();
            getDD1_組合員企業選択();
            
            
            txt_面接日.Text = (String)Session["面接日"]; //param 3
            bindGrv();

        }
    }
    protected void btn登録_Click(object sender, EventArgs e)
    {
        frmJ_InterviewResultCheckManager ivrc = new frmJ_InterviewResultCheckManager();
        入国Ｇ tb = new 入国Ｇ();
        入国Ｇ詳細 tb1 = new 入国Ｇ詳細();
        企業属性情報 tbup = new 企業属性情報();
       
        DataTable dt = new DataTable();
        dt = (DataTable)Session["応募情報"];
        String s3 = "";
        String s5 = "";
        String s6 = "";
        String s7 = "";
        int ddl0 = 0;
        int ddl1 = 0;
        int ddl2 = 0;
        int ddl3 = 0;
        int ins = 0;
        int 終了区分 = 1;
        //int loginID;
        int 企業コード_2;
        List<応募状態> listINS = new List<応募状態>();
        List<基本情報> listDEL = new List<基本情報>();
        List<面接情報> listUP = new List<面接情報>();
        //if (Session["frmD_Login_社員ID"] != null && (Session["frmD_Login_企業ID"]).ToString() != "")
        //{
        //    loginID = Convert.ToInt32(Session["frmD_Login_企業ID"]);
        //}
        //else
        //{
        //    loginID = 0;
        //}
        //Session ID cty login
        if (Session["企業コード_2"] != null && (Session["企業コード_2"]).ToString() != "")
        {
            企業コード_2 = Convert.ToInt32(Session["企業コード_2"]);
        }
        else
        {
            企業コード_2 = 0;
        }

        String 組合員企業選択 = (String)Session["組合員企業選択"];
        String 組合選択 = (String)Session["組合選択"];
        String 面接日 = (String)Session["面接日"];
        foreach (DataRow row in dt.Rows)
        {
            応募状態 tb2 = new 応募状態();
            基本情報 tb3 = new 基本情報();
            面接情報 tb4 = new 面接情報();
            s5 = row["グループ名"].ToString();//param tu textbox o giao dien search
            tb.団体ID = Convert.ToInt32(組合選択);
            tb1.企業ID = Convert.ToInt32(組合員企業選択);

            tb.入国Ｇ名 = s5;
            tbup.送出しID = 企業コード_2;//ID Cty phai cu
            tbup.廃止区分 = 0;
            s3 = row["ID"].ToString();
            s6 = row["結果"].ToString();
            s7 = row["面接情報ID"].ToString();

            if (s6 == "1")
            {
                ddl0 = 0;
                ddl1 = 1;
                ddl2 = 0;
                ddl3 = 0;
            }

            else if (s6 == "3")
            {
                ddl0 = 0;
                ddl1 = 0;
                ddl2 = 0;
                ddl3 = 1;
            }
            tb2.応募情報ID = Convert.ToInt32(s3);
            tb2.企業面接欠席 = ddl0;
            tb2.企業面接合格 = ddl1;
            tb2.企業面接不合格 = ddl2;
            tb2.予備合格 = ddl3;
            if (企業コード_2 == 0)
            {
                tb2.登録ユーザ = 0;
            }
            else
            {
                tb2.登録ユーザ = Convert.ToInt32(企業コード_2);
            }
            
            listINS.Add(tb2);
            if (s6 == "1" || s6 == "3")
            {              
                tb3.団体ID = Convert.ToInt32(組合選択);
                tb3.企業ＩＤ = Convert.ToInt32(組合員企業選択);
                if (企業コード_2 == 0)
                {
                    tb3.送出しID = 0;
                }
                else
                {
                    tb3.送出しID = 企業コード_2;
                }
                tb3.IDselect = Convert.ToInt32(s3);
                listDEL.Add(tb3);
            }
            tb4.ID = Convert.ToInt32(s7);//pram 6
            tb4.終了区分 = 終了区分;
            listUP.Add(tb4);
        }


        ins = ivrc.insertAll(tb, tb1, tbup, listINS, listDEL, listUP);
        if (ins != 0 && ins != -1)
        {   
            Session.Remove("応募情報");
            Session.Remove("組合員企業選択");
            Session.Remove("組合選択");
            Session.Remove("面接日");
            Response.Redirect("frmJ_TraineeManager.aspx", false);
        }
        else
        {
            String mess = "Insert Invalid !";
            ClientScript.RegisterStartupScript(this.GetType(), "alert", "<script>alert('" + mess + "');</script>");
        }
    }
    //BIND DATA INTO GRIDVIEW
    public void bindGrv()
    {
        if (Session["応募情報"] != null)
        {
            grv.DataSource = (DataTable)Session["応募情報"];
            grv.DataBind();
        }
    }
    //GET DATA INTO DROPDOWNLIST DD1_組合選択
    public void getDD1_組合選択()
    {
        本社情報Manager frm = new 本社情報Manager();
        DataTable dt = new DataTable();
        dt = frm.Search_TraineeEnterSchool();
        if (dt.Rows.Count > 0)
        {
            ddl_組合選択.DataSource = dt;
            ddl_組合選択.DataTextField = "企業名";
            ddl_組合選択.DataValueField = "企業ID";
            ddl_組合選択.DataBind();

            ListItem 選択 = new ListItem("[選択]", "-1");
            ddl_組合選択.Items.Insert(0, 選択);
        }

    }
    //GET DATA INTO DROPDOWNLIST DD1_組合員企業選択
    public void getDD1_組合員企業選択()
    {
        本社情報Manager frm = new 本社情報Manager();
        DataTable dt = new DataTable();
        if (ddl_組合選択.SelectedIndex != 0)
        {
            dt = frm.frmJ_TraineeAppAssignConfirm_GetDDl組合員企業選択(Int32.Parse(Session["組合選択"].ToString()));
        }
        else
        {
            dt = frm.frmJ_TraineeAppAssignConfirm_GetDDl組合員企業選択(0);
        }

        //if (dt.Rows.Count > 0)
        {
            ddl_組合員企業選択.DataSource = dt;
            ddl_組合員企業選択.DataTextField = "企業名";
            ddl_組合員企業選択.DataValueField = "企業ID";
            ddl_組合員企業選択.DataBind();

            ListItem 選択 = new ListItem("[選択]", "-1");
            ddl_組合員企業選択.Items.Insert(0, 選択);
        }
    }
    public string Convert2Value(string key)
    {
        Dictionary<string, string> dictionary = new Dictionary<string, string>();
        dictionary.Add("0", "企業面接欠席");
        dictionary.Add("1", "企業面接合格");
        dictionary.Add("2", "企業面接不合格");
        dictionary.Add("3", "予備合格");

        return dictionary[key].ToString();
    }
    protected void grv_PageIndexChanging(object sender, GridViewPageEventArgs e)
    {
        grv.PageIndex = e.NewPageIndex;
        bindGrv();
    }
    public string ConvertDate(string str)// METHOD CONVERT DATE.
    {
        if (str == "")
        {
            return str = "";
        }
        else
        {
            string date = str;
            DateTime d1 = DateTime.Parse(date);
            d1.Year.ToString();
            return date = d1.ToString("yyyy年MM月dd日");
        }
    }
    protected void btn戻る_Click(object sender, EventArgs e)
    {     
        Response.Redirect("frmJ_InterviewResultSearch.aspx");
    }
}
